Automation scripts are generated by recording user interactions with a software application (e.g., a web application). Once the script is created, automation software can be used to simulate the user's interactions with the application by replaying the script. In general, the automation software uses the application during the playback of the script in the same manner as a user would use the application. Objects in the application can be identified and included in the script to enable performance of the application functions. Software automation may be used for various purposes, such as to test a system, or for other purposes.